Software Architectural Analysis : An Experience

نویسندگان

  • Mauricio De Simone
  • Rick Kazman
چکیده

As the software marketplace becomes more competitive, customers and developers demand more from their products. Software quality is now seldom measured solely in terms of exe-cutable features. Non-functional qualities, such as portability, modiiability, extendibility, etc. are becoming increasingly important in the success of a software product. Software architecture analysis is based upon the assumption that the product's architecture is responsible for a substantial amount of its non-functional qualities. Making such analyses is important because they represent a relatively low-cost means of improving a product early in the software development life cycle, or in determining directions for product evolution later in the life cycle. Moreover if architectural analysis is done in the design stage and maintained in every stage of the development of the product then it also constitutes a very eeective tool for communication within the development team. This paper presents the experience of applying SAAM (Software Architecture Analysis Method) to the analysis and evaluation of a commercial revision control system. The methodology is described, concentrating on: 1) the usage scenarios of interest to the various users, developers, and administrators of the system; 2) a technique for characterizing the system at an architectural level; 3) the evaluation and recommendations made, and their impact on the software development company. 1 Software Architecture Software quality is seldom measured solely in term of executable functions. It invariably includes non-functional qualities like portabil-ity, extendibility, modiiability .. .This demand for non-functional qualities comes from many sources, among them: software systems are getting larger and more complex; software development companies are attempting to develop product families rather than just single products ; networks of heterogeneous machines and protocols are now common, the complexities of new problems require that software tools be integrated in a more eecient way. Not only does this have impact on the use of a software prod

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Integrating Model-Checking Architectural Analysis and Validation in a Real Software Life-Cycle

In this paper we describe the use of a model-checking based tool, Charmy, in an industrial software development environment. The goal of the project is to model and analyze the software architecture of a software system currently under development. We have defined and formally checked its overall architecture. By zooming into relevant subsystems we have been able to identify a set of uncorrect ...

متن کامل

Embedding architectural support in industry

Software architecture plays a vital role in the development (and hence maintenance) of large complex systems with a long lifetime. It is therefore required that the software architecture is also maintained, i.e. sufficiently documented, clearly communicated, and explicitly controlled. In our experience, these requirements cannot be met without appropriate support. Commercial-off-the-shelf suppo...

متن کامل

A Cooperative Coevolution Approach to Automate Pattern-based Software Architectural Synthesis

To reuse successful experience in software architecture design, architects use architectural patterns as reusable architectural knowledge for architectural synthesis. However, it has been observed that the resulting architecture does not always conform to the initial architectural patterns employed. Architectural synthesis using architectural patterns is also recognized as a challenging task, e...

متن کامل

A New Algorithm for Performance Evaluation of Homogeneous Architectural Styles

Software architecture is considered one of the most important indices of software engineering today. Software Architecture is a technical description of a system indicating its component structures and their relationships, and is the principles and rules governing designing. The success of the software depends on whether the system can satisfy the quality attributes. One of the most critical as...

متن کامل

A New Algorithm for Performance Evaluation of Homogeneous Architectural Styles

Software architecture is considered one of the most important indices of software engineering today. Software Architecture is a technical description of a system indicating its component structures and their relationships, and is the principles and rules governing designing. The success of the software depends on whether the system can satisfy the quality attributes. One of the most critical as...

متن کامل

Using Multiple Views to Model and Analyze Software Architecture: An Experience Report

Architectural modeling and analysis is a critical phase in developing large and complex software systems. The usefulness of multiple views has likewise long been recognized. In this experience report, we explain how we used two ADLs to model a system initially described in UML. The system (SCRover) is designed and built in close collaboration with NASA’s Jet Propulsion Laboratory, using their M...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007